<!-- Footer -->
<footer>
    <div class="container">
        <div class="row">
            <div class="col-lg-8 col-lg-offset-2 col-md-10 col-md-offset-1">
                <!-- SNS Link -->
                {% include sns-links.html center=true %}

                <p class="copyright text-muted">
                    Copyright &copy; {{ site.title }} {{ site.time | date: '%Y' }}
                    <br>
                    Powered by <a href="https://github.com/jekyll/jekyll">jekyll</a> |
                    <iframe
                            style="margin-left: 2px; margin-bottom:-5px;"
                            frameborder="0" scrolling="0" width="120px" height="20px"
                            src="https://ghbtns.com/github-btn.html?user=jekyll&repo=jekyll&type=star&count=true">
                    </iframe>
                </p>
            </div>
        </div>
    </div>
</footer>

<!-- jQuery -->
<script src="{{ '/js/jquery.min.js' | prepend: site.baseurl }}"></script>

<!-- Bootstrap Core JavaScript -->
<!-- Currently, only navbar scroll-down effect at desktop still depends on this -->
<script src="{{'/js/bootstrap.min.js' | prepend: site.baseurl }}"></script>

<!-- Custom Theme JavaScript -->
<script src="{{ '/js/blog.min.js' | prepend: site.baseurl }}"></script>

<!-- Service Worker -->
{% if site.service-worker %}
<script src="{{ '/js/snackbar.js' | prepend: site.baseurl }}"></script>
<script src="{{ '/js/sw-registration.js' | prepend: site.baseurl }}"></script>
{% endif %}

<!-- async load function -->
<script>
    function async(u, c) {
        var d = document, t = 'script',
            o = d.createElement(t),
            s = d.getElementsByTagName(t)[0];
        o.src = u;
        if (c) {
            o.addEventListener('load', function (e) {
                c(null, e);
            }, false);
        }
        s.parentNode.insertBefore(o, s);
    }
</script>

<!-- fancybox plugin -->
<script src="{{ site.baseurl }}/plugin/fancybox/lib/jquery-1.10.1.min.js"></script>
<script type="text/javascript" src="{{ site.baseurl }}/plugin/fancybox/source/jquery.fancybox.pack.js?v=2.1.5"></script>
<script>
    // 给图片添加链接
    $(document).ready(function () {
        $("p img").each(function () {
            var strA = "<a id='yourid' href='" + this.src + "'></a>";
            $(this).wrapAll(strA);
        });
    });

    // fancybox
    $("#yourid").fancybox({
        openEffect: 'elastic',
        closeEffect: 'elastic',
    });
</script>

{% if page.title == 'Tags' or page.title == 'Archive'%}
<!-- jquery.tagcloud.js -->
<script>
    async("{{ '/js/jquery.tagcloud.js' | prepend: site.baseurl }}", function () {
        $.fn.tagcloud.defaults = {
            //size: {start: 1, end: 1, unit: 'em'},
            color: {start: '#bbbbee', end: '#2f93b4'},
        };
        $('#tag_cloud a').tagcloud();
    })
</script>
<script src="{{ '/js/tags.js' | prepend: site.baseurl }}"></script>
{% endif %}

<!--fastClick.js -->
<script>
    async("//cdnjs.cloudflare.com/ajax/libs/fastclick/1.0.6/fastclick.min.js", function () {
        var $nav = document.querySelector("nav");
        if ($nav) FastClick.attach($nav);
    })
</script>


<!-- Google Analytics -->
{% if site.ga_track_id %}
<script>
    // dynamic User by Hux
    var _gaId = '{{ site.ga_track_id }}';
    var _gaDomain = '{{ site.ga_domain }}';

    // Originial
    (function (i, s, o, g, r, a, m) {
        i['GoogleAnalyticsObject'] = r;
        i[r] = i[r] || function () {
            (i[r].q = i[r].q || []).push(arguments)
        }, i[r].l = 1 * new Date();
        a = s.createElement(o),
            m = s.getElementsByTagName(o)[0];
        a.async = 1;
        a.src = g;
        m.parentNode.insertBefore(a, m)
    })(window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga');

    ga('create', _gaId, _gaDomain);
    ga('send', 'pageview');
</script>
{% endif %}


<!-- Baidu Tongji -->
{% if site.ba_track_id %}
<script>
    // dynamic User by Hux
    var _baId = '{{ site.ba_track_id }}';

    // Originial
    var _hmt = _hmt || [];
    (function () {
        var hm = document.createElement("script");
        hm.src = "//hm.baidu.com/hm.js?" + _baId;
        var s = document.getElementsByTagName("script")[0];
        s.parentNode.insertBefore(hm, s);
    })();
</script>
{% endif %}


<!-- Side Catalog -->
{% if page.catalog %}
<script type="text/javascript">
    function generateCatalog(selector) {

        // interop with multilangual 
        if ('{{ page.multilingual }}' == 'true') {
            _containerSelector = 'div.post-container.active'
        } else {
            _containerSelector = 'div.post-container'
        }

        // init
        var P = $(_containerSelector), a, n, t, l, i, c;
        a = P.find('h1,h2,h3,h4,h5,h6');

        // clean
        $(selector).html('')

        // appending
        a.each(function () {
            n = $(this).prop('tagName').toLowerCase();
            i = "#" + $(this).prop('id');
            t = $(this).text();
            c = $('<a href="' + i + '" rel="nofollow">' + t + '</a>');
            l = $('<li class="' + n + '_nav"></li>').append(c);
            $(selector).append(l);
        });
        return true;
    }

    generateCatalog(".catalog-body");

    // toggle side catalog
    $(".catalog-toggle").click((function (e) {
        e.preventDefault();
        $('.side-catalog').toggleClass("fold")
    }))

    /*
     * Doc: https://github.com/davist11/jQuery-One-Page-Nav
     * Fork by Hux to support padding
     */
    async("{{ '/js/jquery.nav.js' | prepend: site.baseurl }}", function () {
        $('.catalog-body').onePageNav({
            currentClass: "active",
            changeHash: !1,
            easing: "swing",
            filter: "",
            scrollSpeed: 700,
            scrollOffset: 0,
            scrollThreshold: .2,
            begin: null,
            end: null,
            scrollChange: null,
            padding: 80
        });
    });
</script>
{% endif %}


<!-- Multi-Lingual -->
{% if page.multilingual %}
<!-- Handle Language Change -->
<script type="text/javascript">
    // get nodes
    var $zh = document.querySelector(".zh");
    var $en = document.querySelector(".en");
    var $select = document.querySelector("select");

    // bind hashchange event
    // Changes at v1.7.2: change the language flag from hash-basing to in-memory basing
    // due to its confliction with catalog anchors.
    // window.addEventListener('hashchange', _render);

    // handle render
    function _render(_hash) {
        var _hash = _hash || window.location.hash;
        // en
        if (_hash == "#en") {
            $select.selectedIndex = 1;
            $en.style.display = "block";
            $en.classList.add("active");
            $zh.style.display = "none";
            $zh.classList.remove("active");
            // zh by default
        } else {
            // not trigger onChange, otherwise cause a loop call.
            $select.selectedIndex = 0;
            $zh.style.display = "block";
            $zh.classList.add("active");
            $en.style.display = "none";
            $en.classList.remove("active");
        }
        // interop with catalog 
        if ("{{ page.catalog }}") generateCatalog(".catalog-body");
    }

    // handle select change
    function onLanChange(index) {
        if (index == 0) {
            _hash = "#zh"
        } else {
            _hash = "#en"
        }
        _render(_hash)
    }

    // init
    _render();
</script>
{% endif %}
